home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 1
/
Cream of the Crop 1.iso
/
SOUND
/
TTALK112.ARJ
/
TTALK.DOC
< prev
next >
Wrap
Text File
|
1992-05-18
|
72KB
|
1,411 lines
TINYTALK PERSONAL: THE POWERFUL AND AFFORDABLE SCREEN READER
USER GUIDE
OMS Development
1921 Highland Ave.
Wilmette, IL 60091
(708)251-5787
TABLE OF CONTENTS
SECTION 1: INTRODUCTION
SECTION 2: LEGAL STUFF
SECTION 3: WHY TINYTALK?
SECTION 4: OVERVIEW OF TINYTALK'S FACILITIES
SECTION 5A: SUPPORTED HARDWARE
SECTION 5B: INSTALLING TINYTALK
SECTION 5C: RUNNING TINYTALK
SECTION 6: HOT KEYS
SECTION 7: CURSOR TRACKING
SECTION 8: FORM FILLING
SECTION 9: AUTOMATIC POP-UP WINDOW READING
SECTION 10: DEFINED WINDOWS
SECTION 11: REVIEW/CONTROL MODE
SECTION 11A: NAVIGATION
SECTION 11B: SYNTHESIZER CONTROL COMMANDS
SECTION 11C: TINYTALK SETTING COMMANDS
SECTION 11D: WINDOW SETTING COMMANDS
SECTION 11E: REMAPPING HOTKEYS
SECTION 11F: LABELLING KEYS
SECTION 11G: CONFIGURATION SETTING
SECTION 11H: MISCELLANEOUS COMMANDS
SECTION 11I: A WINDOW AND CONFIGURATION EXAMPLE
SECTION 12: SAVING AND LOADING CONFIGURATION LIBRARIES
SECTION 13: KNOWN BUGS AND LIMITATIONS
SECTION 14: CONTACT INFORMATION
SECTION 15: ABOUT OMS DEVELOPMENT
SECTION 1: INTRODUCTION
Tinytalk Personal is a powerful and affordable speech access program
for IBM-compatible computers. It was designed with three goals in
mind: to provide an entry-level screen reader that doesn't cost an arm
and a leg, to make modern application programs speak more or less
automatically and to use as little memory as possible (it currently
takes up only 24K).
Tinytalk Personal isn't intended to be all things to all people;
rather it tries to provide the minimum set of options needed to run
modern software. We are currently developing Tinytalk Professional, a
set of "add-ins" for Tinytalk Personal that will provide advanced
features like user-defined pronunciation dictionaries, "auto-pilot"
text reading and a compiler for making configuration files from text
descriptions.
SECTION 2: LEGAL STUFF
Tinytalk Personal, its support programs and this document are
copyright 1990-1992 by OMS Development/Eric Bohlman. All rights
reserved.
Tinytalk Personal is distributed as shareware, which means that you
can obtain it and try it out free of charge. If you decide to make it
your primary speech package, you are required to pay for it. Since
shareware distribution eliminates many of the traditional costs
involved in marketing software (especially costs incurred by
distributors of adaptive software), paying for it shouldn't be a big
strain on anybody; we can offer Tinytalk Personal for $75, which is
much lower than most speech packages.
You may distribute the UNREGISTERED version of Tinytalk Personal to
others (including posting it on computer bulletin boards) as long as
you include the ENTIRE, UNMODIFIED set of files listed in the
accompanying READ.ME file. You may not charge anybody more than the
cost of disk media and mailing. You may transfer the REGISTERED
version of Tinytalk Personal to another party only if you do not
retain any copies for yourself.
Product names used in this document are trademarks of their respective
manufacturers. No endorsements or affiliations of any sort are
implied.
SECTION 3: WHY TINYTALK?
Modern application software doesn't treat the screen like a scroll of
paper with new text coming in at the bottom; it considers it a "page"
made up of sections called "windows." An application program can do
several things with a window. It can display status information that
seldom changes. It can "pop up" a menu when you hit a key. It can
show a "lightbar menu" that lets you select an option by moving a
highlighted video bar over a list of choices. It can display
scrolling text in the window while keeping the rest of the screen
"locked in place." These actions are often controlled by using the
cursor keys.
Most programs write characters directly to the screen instead of using
the rather slow and inflexible routines built into DOS. This means
that a speech program can't just speak line-at-a-time DOS output; it
has to analyze the screen and read the changes in a way that makes
sense to the user. Tinytalk does this by providing a comprehensive
set of window-handling and cursor-tracking facilities.
SECTION 4: OVERVIEW OF TINYTALK'S FACILITIES
IMMEDIATE OUTPUT
All screen output sent through DOS or BIOS routines will be spoken as
it occurs. You can turn this off completely, or you can set portions
of the screen to be silent.
JUNK SUPPRESSION
If an application displays a long line of punctuation characters,
Tinytalk will read only the first two if the rest are identical.
KEYBOARD ECHO
You can have your keystrokes spoken as words, as letters or not at all.
CURSOR TRACKING
When you move the cursor in a program, you can hear the text that it's
moving over. You will hear characters that you delete with either the
backspace or delete keys. You can specify how much text you want to
hear.
FORM FILLING
When you're using a "fill-in-the-form" data entry screen, you can hear
each field prompt as you move to it, even when there are several
fields on the same line.
AUTOMATIC WINDOW READING
You can have windowed areas of the screen spoken automatically when
they change.
COLUMN HEADER READING
Tinytalk can automatically read column headings or titles as you move
around a spreadsheet or database browse screen.
REMAPPABLE HOT KEYS
You can review important parts of the screen from within an
application without going into review mode. You can pick what
keystrokes you want to use as hot keys.
REVIEW AND CONTROL MODE
Tinytalk has a comprehensive screen review mode for moving around the
screen without disturbing an application program. In this mode, you
can also set synthesizer parameters like pitch and speed and set
various options for Tinytalk itself.
SHIFT ALERT
Tinytalk will buzz at you if you accidentally type in reversed case
(holding down the shift key and typing a letter while caps lock is on).
MARGIN BELL
Tinytalk can ring a bell when you enter text past a right margin you
select.
PROTECTED ATTRIBUTE ANNOUNCEMENT
You can tell Tinytalk to click the speaker whenever the cursor passes
over a video attribute that you select.
USER-DEFINED PUNCTUATION
You can tell Tinytalk what punctuation characters to read. You can
have different punctuation groups for reading versus typing.
AUTOMATIC CLEARING
Tinytalk will automatically clear any unfinished speech when you move
the cursor or when a window gets read. You can choose whether or not
keyboard echo clears speech.
MIXED-TEXT READING
Tinytalk will spell out any word that doesn't contain a vowel, or that
includes digits as well as letters (such as ham calls). If your
synthesizer supports number processing, Tinytalk can use it when
saying "words" that contain only digits.
KEY LABELLING
You can tell Tinytalk to say a word or phrase of your choice whenever
you hit a certain key. You can have separate groups of key labels for
each application program you use.
MULTIPLE CONFIGURATIONS WITH AUTOMATIC LOADING
Tinytalk can store up to 30 configurations (window definitions, mode
settings and the like). You can switch between configurations with a
few keystrokes, or you can have Tinytalk automatically switch you to
the correct configuration when you run a program. You can have
separate configurations for individual screens within a program, and
Tinytalk can automatically switch between them based on the presence
of identifying text on the screen.
SECTION 5A: SUPPORTED HARDWARE
See the accompanying READ.ME file for a list of synthesizers supported.
TTSONIX.EXE will work with any synthesizer that uses Sonix and TTS.
TTSOUND.EXE will also work with any synthesizer that uses Porttalk.
TTLAPTLK.EXE will also work with any synthesizer based on the RC
Systems 8600 or 8601 OEM speech boards.
SECTION 5B: INSTALLING TINYTALK
You'll need to copy at least two files from the Tinytalk distribution disks
or archive to the disk (hard or floppy) you're going to run Tinytalk from.
You'll always want to copy TTCONF.EXE (the configuration load/save/view
utility). You'll also need to copy the appropriate main program file for
your synthesizer. Tinytalk has a separate program file for each
synthesizer rather than a single file for all synthesizers. This reduces
the amount of memory required, since you aren't carrying around support
code for synthesizers that you aren't using. The accompanying READ.ME file
has a list of the program files for the supported synthesizers. Pick the
right one and copy it to the appropriate directory. You should name it as
TTALK.EXE so that the TTCONF utility can find it. You'll probably also
want to copy this manual.
If you are a registered user of Tinytalk, there will be one or two more
files you'll want to copy. UPDATE.EXE is a program that transfers your
registration to new copies of the Tinytalk program files. If you obtain an
unregistered copy of a newer version, UPDATE will turn it into a registered
copy (we trust you not to abuse this privilege; registered copies of
Tinytalk are for your own use only). If you had a registered copy of
Tinytalk before version 1.10, you will also be getting CVTCONF.EXE which
will take your old configuration files (see below) and convert them to the
new format used in versions 1.10 and above.
If you received Tinytalk on a 3.5" disks, or if you obtained it by
downloading from a bulletin board, all the program files will be directly
available. If you received Tinytalk on a 5.25" disk, most of the files
will be stored in a special archive file (otherwise they wouldn't all fit
on one disk). We've provided a special program called TTCOPY.BAT which
will let you extract files from this archive (for the technically-minded,
it invokes LHA, a freely-distributable archiving program developed by
Haruyasu Yoshizaki).
EXAMPLE: Let's assume you want to install Tinytalk for a Doubletalk
synthesizer. You've got the distribution files on a floppy in drive A and
you want to put them into a hard-disk directory called C:\TINYTALK. From
the DOS prompt, issue the following commands:
MD TINYTALK
CD TINYTALK
A:
COPY TTCONF.EXE C:
COPY TTDOUBLE.EXE C:
C:
REN TTDOUBLE.EXE TTALK.EXE
(if you were installing from a 5.25" disk, you'd use TTCOPY in place of
COPY)
SECTION 5C: RUNNING TINYTALK
Before running Tinytalk, make sure your synthesizer is properly connected
and that you've loaded any driver programs that your synthesizer needs to
run (unless you are using the SoundBlaster; see below). If you have an
external synthesizer hooked up to a serial port, set it for 9600 baud. You
can use either CTS/RTS or XON/XOFF handshaking; Tinytalk will automatically
adjust.
To bring up Tinytalk, type TTALK optionally followed by a space and a
port number: C1 or C2 for serial ports COM1 and COM2, or L1, L2 or L3
for parallel ports LPT1, LPT2 or LPT3. You can specify C3 or C4 for
COM3 or COM4 if you're using a synthesizer with a software driver that
emulates ports (such as the Soundingboard). Tinytalk doesn't currently
support physical serial ports on COM3 or COM4. For example, if you had a
synthesizer hooked up to serial port 1, you would type TTALK C1. If you
leave out the port specification, Tinytalk will configure itself for
default output (COM2 for all synthesizers except the Accent and internal
Echo, where the default is LPT3, and the Doubletalk, Sonix, SoundBlaster
and Speech Thing which have their own special ports. You will have to
explicitly specify a serial port if you are using the Accent SA). You'll
probably want to put the TTALK command in your AUTOEXEC.BAT file.
If you are using the SoundBlaster, DO NOT load SBTALKER before running
Tinytalk. Tinytalk will load SBTALKER.EXE and BLASTER.DRV itself; these
two files must be located in the current directory.
If you are using the Speech Thing, you must load SPEECHV3. The Version 4
driver is not currently compatible with Tinytalk. You do NOT need to
install STDRIVER.SYS (it won't do any harm, but Tinytalk doesn't need it).
If you haven't changed the default configuration for Tinytalk, you
will come up in immediate output and words-mode keyboard echo. Cursor
tracking will read single characters when you move the cursor
horizontally and whole lines when you move it vertically. All
punctuation will be spoken.
If you're running an unregistered copy, Tinytalk will wait 25 seconds
while the "nag message" is being spoken.
If you have a 386 or 486 machine, you can load Tinytalk into high
memory using LOADHI if you're using QEMM or LOADHIGH if you're using
MS-DOS 5.0. We haven't had a chance to try it out with 386-to-the-
Max, but it will probably work as well.
SECTION 6: HOT KEYS
Hot keys are keystrokes that tell Tinytalk to do something when you're
not in review mode. The key combinations have been chosen to be ones
that application programs are unlikely to use. If you want to change
them, you can use the "hotkey remapping" feature (see Section 11E).
If an application program needs to use one of these keystrokes, you
can tell Tinytalk to pass it through to the program.
QUICK FLUSH
Pressing the Alt key will stop whatever is being spoken and flush the
synthesizer's speech buffer.
TIMED SHUTUP
Pressing Alt-slash will shut off all speech until either you press a
key or five seconds (this time can be changed) go by with no attempted
output. In the latter case, Tinytalk will beep to get your attention
(you use this to silence Tinytalk when capturing text in a terminal
program or running a program that gives lots of uninformative output).
READ CURRENT LINE
Pressing Alt-space will read the line under the cursor.
READ CURRENT WORD
Pressing Alt-comma will read the word under the cursor. If you press
it a second time without moving the cursor, the word will be spelled
out. If you press it a third time, the word will be spelled out
phonetically ("alpha," "bravo" etc.).
READ PREVIOUS TWO LINES
Pressing Alt-period will read the two lines above the current one.
READ ENTIRE SCREEN
Pressing Alt-left bracket will read the entire screen
ANNOUNCE CURSOR POSITION
Pressing Alt-minus will announce the row and column where the cursor
is.
RE-READ AUTOMATIC POP-UP WINDOW
Pressing Alt-semicolon will re-read the most recently read pop-up
window if you have automatic popup detection turned on.
READ A DEFINED WINDOW
There are two ways to do this. By default, pressing Alt-0 through Alt-
9 will read the corresponding window. You can also press Alt-
apostrophe and then press a digit (0 through 9). The computer doesn't
"freeze" while waiting for the digit. See Section 10 for more
information about defined windows.
SELECT A NEW CONFIGURATION
Your synthesizer settings, Tinytalk mode settings, window definitions and
the like are called a configuration. Since different programs (or
different parts of a program) may require different settings, Tinytalk lets
you keep 30 different configurations in memory at one time. To switch to a
new configuration, press Alt-right bracket. Tinytalk will say "load
config" and say the name or number of the first configuration (0). At this
point you have three options: you can enter a number and press ENTER, you
can type in the name of the configuration and press ENTER, or you can step
through the list by hitting the space bar until you hear the name or number
of the configuration you want. Pressing ENTER picks the configuration. If
you choose to type in the configuration name, you don't have to type in all
the characters, just enough to let Tinytalk find it. For example, if you
had a configuration called "DBASE" you could just type in "DB" (assuming
you don't have any other configurations that begin with "DB").
See Section 11G for more information about configurations.
GO INTO REVIEW MODE
Pressing Alt-enter will put Tinytalk into review/control mode.
PASS A KEYSTROKE THROUGH
Pressing Alt-escape will make Tinytalk ignore the next keystroke. Use
this if your application program needs one of the above keystrokes.
SECTION 7: CURSOR TRACKING
In many cases cursor tracking will avoid the need go into review mode
to find your context in a word processor or database program.
Tinytalk allows you to specify what should be read when you move the
cursor horizontally and what should be read when you move it
vertically (see Section 11C for the various possibilities).
HORIZONTAL MOVES
If you use the left or right arrow keys (or the Wordstar equivalents
control-s or control-d) or the home or end keys, Tinytalk will assume
you're moving horizontally. The default action is to speak the
character that you move to.
VERTICAL MOVES
If you use the up or down arrow keys (or control-e or control-x),
Tinytalk will assume you're moving vertically. The default action is
to speak the entire line that you move to. Control-Y, which is the
Wordstar command for deleting a line, will speak the next line.
In some applications, the tab and enter keys act as cursor movement
keys (moving between fields in a database record, for example). You
can tell Tinytalk to perform the vertical movement action when you
press these keys.
WORD MOVES
If you use control-leftarrow or control-rightarrow (or the Wordstar
equivalents control-a or control-f), Tinytalk will read the entire
word you move onto. If you use backspace or delete, Tinytalk will
speak the deleted character
PAUSES
Tinytalk will sometimes pause slightly before speaking when you move
the cursor. It has to do this because some applications move the
cursor to an intermediate location before putting it in its final
position. For example, some editors will briefly move the cursor to a
status line. The pause ensures that the right text will be read.
SECTION 8: FORM FILLING
Database programs and other "fill in the forms" applications treat the
screen as a form to be filled out, with text prompts followed by
highlighted entry fields. The cursor, tab and enter keys move the
cursor between these fields. There are often several fields on the
same line.
If you turn forms mode on, Tinytalk will monitor cursor movements to
see if the cursor moves into a highlighted field. If so, it will read
any non-highlighted text before the field and then read the field
itself. This lets you hear each field prompt (as well as any default
value in the field) in the right order. If there are multiple fields
on the line, you will hear only the one you're working on.
SECTION 9: AUTOMATIC POP-UP WINDOW READING
Tinytalk can automatically detect most pop-up windows and read them
without you having to tell it anything. If you have automatic pop-up
detection turned on and an application program draws a box around an
area of the screen, Tinytalk will automatically read the text within
the box and try to guess whether the box contains a light-bar menu.
If it does, moving the cursor will read off the choices. You can re-
read an automatic pop-up window with a single keystroke.
If more than one pop-up window is active, Tinytalk will read only the
last one to pop up. When a window vanishes, Tinytalk will re-read the
next most recently popped-up window if there is one.
SECTION 10: DEFINED WINDOWS
You can tell Tinytalk about sections of the screen that mean special
things to your application by defining up to ten windows and telling
it what kind of display to expect in them. Tinytalk will then speak
them in a natural way.
A window is a rectangular section of the screen that an application
uses for some specific purpose. A window is always designated by two
pairs of coordinates: its top left corner and its bottom right corner.
At any one time, Tinytalk can work with up to 10 defined windows,
numbered 0 through 9. Each configuration has its own bank of 10
windows.
Defined windows can be used for four different purposes: manual
reading, silencing, automatic reading and automatic configuration
switching. You can read any of the 10 windows by pressing one or two
keys in either application mode or review mode. You can tell Tinytalk
to treat any of the windows as silent areas, which means that BIOS
output and cursor movements within the window will not be spoken.
This is useful for "shutting up" clock displays or status lines that
change every time you type a character. Tinytalk can automatically
read a window to you when it changes, even if the change was caused by
a direct screen write. Finally, Tinytalk can monitor the screen for
text that indicates that you've changed to a different sub-screen of
your application program and change configurations automatically (a
good example is the editing and spell-checking screens in WordPerfect).
AUTOMATIC WINDOW READING
When you tell Tinytalk to monitor a window and read if it changes, you
can specify two things: WHEN to read the window and WHAT to read in
the window. Each of the 10 defined windows has two settings which are
called, naturally enough, the WHEN and WHAT settings. In the
following discussion, we're also going to talk about a window being
"activated." This means that Tinytalk has detected a change in the
window that agrees with that window's WHEN setting and that Tinytalk
is about to read the window. Reading a window manually doesn't count
as activation.
WHEN SETTINGS
A window can have seven possible WHEN settings. "Plain" means that
the window will not be monitored automatically; it will be read only
if you specifically ask to hear it. "Silent" means that the window
specifies a silent area of the screen, as described above. "Watch"
means that the window will be activated whenever its contents change.
"Popup" and "One-shot," are special types of watch windows. "Popup"
means the window will not activate unless there's a box around it.
"One-shot" means the window will not activate unless it has a box, and
it will not re-activate if changes occur within the box (this is
needed if, for example, there's a clock being displayed in the box).
"Triggered" means that the window will activate whenever another
window that you specify activates. This setting can be used when you
want to read part of the screen only when another part changes.
"Search" means the window will activate only when 1) it changes and 2)
a word or phrase you specify is present at the top left corner.
You won't need to use "popup" or "one-shot" very often because
automatic pop-up detection can handle most of those kinds of windows.
They're included in case you run into problems with non-standard
border characters or the like.
Tinytalk won't read a watch window if the only change was caused by
your typing text into it.
WHAT SETTINGS
These ten options that determine WHAT happens when a window activates.
"All" means that the entire window will be read. "Lightbar" means
that only text with a certain video attribute will be read. Video
attributes are properties like colors, reverse/normal video and
highlighting. The most common use of this setting is to read lightbar
menus, but it can be used any time you want to read selectively by
attribute. It's also the best way to read database browse screens and
spreadsheets, which usually use a highlight bar as a simulated cursor.
"Scroll" and "C-scroll" are for windows where lines of text scroll up
and down. With either option, when text scrolls into the window
you'll hear only the new text, not the old text that's just shifted in
position. Use "scroll" when you manually scroll text in a line at a
time by pressing keys (file readers and telecommunication program
dialing directories are typical examples); new text scrolling in will
interrupt previous speech. Use "c-scroll" when text scrolls in
automatically; new text will not interrupt old text, and if the window
fills up Tinytalk will pause the application and read the window
before any text scrolls off.
"Floating" is for reading column titles on spreadsheets or database
browse screens. You normally use it in a window that's triggered by a
lightbar window. When a floating window gets triggered, Tinytalk
looks at the lightbar window that triggered it and reads the section
of the floating window that "floats" over the lightbar. Floating
windows can also be used together with cursor movement. If you have
one of your cursor movement options set to "window lines" or "columns"
and there's a floating window above where your cursor is, the window
will automatically trigger when you move the cursor. The check
register in Quicken is an example of a place where this is useful.
"None" means that the window won't be read when it activates. You use
this when you're using one window solely to trigger another one. For
example, some text editors display prompts (which you want to hear)
and row/column indicators (which you usually don't want to hear) in
the same place but at different times. Generally, at least part of
the line will change only when there's a prompt; you can define that
part as a watch window which triggers another window that reads the
whole line. This gives you the effect of a window that you hear in
its entirety, but only when a key part of it changes.
"Spell all" and "Spell lightbar" work like "all" and "lightbar" except
that the contents of the window will be spelled out rather than spoken
as words. "Switch" means that when the window is triggered, Tinytalk
will change to another configuration that you specify. "Beep" means
that Tinytalk will beep when the window activates, but will not read
any text. This is useful for monitoring the progress of file
transfers in a telecommunications program; you can get a beep each
time the program updates the block count.
MULTIPLE WINDOWS
If two or more automatically-read windows activate at the same time,
Tinytalk will read them in left-to-right, top-to-bottom order.
When one or more automatically read windows activate, Tinytalk
normally shuts up the synthesizer before reading the first one. In
some cases, you may need to stop this from happening. A good example
is the WordPerfect spell checking screen. People often like to set up
two windows there: a watch window set to "spell lightbar" to read the
misspelled word and another watch window set to "all" to read the
suggested alternatives. WordPerfect has a habit of pausing for a
second or so while it looks up alternative spellings, and the pause
can be long enough that Tinytalk decides that the windows have stopped
changing and starts to read them. When the second window starts
changing again, Tinytalk shuts up and starts reading it, even though
you haven't heard all of the first window. The discussion on window
commands in section 11D describes how to tell Tinytalk not to shut up
before reading a specified window.
It's worth mentioning at this point that Tinytalk has no way of
knowing when the synthesizer has finished speaking everything that was
sent to it. Some synthesizers have a feature called "indexing" that
provides this information, but most of them don't and Tinytalk doesn't
presently support indexing.
SECTION 11: REVIEW/CONTROL MODE
You enter review mode by pressing Alt-enter. In review mode, Tinytalk
freezes the application and takes over the keyboard and display. When
you're in review mode, you can issue commands to do the following
things: "navigate" around the screen, change synthesizer settings,
change Tinytalk settings, set up windows, remap hotkeys, define key
labels, and set up configurations.
SECTION 11A: NAVIGATION
These commands let you move around and read parts of the screen. When
you enter review mode, Tinytalk saves the video cursor's location.
Navigation commands will move the cursor (which helps if someone is
watching over your shoulder). When you leave review mode, the cursor
goes back to its original position unless you tell Tinytalk to "route"
the cursor.
CURSOR MOVEMENT
You can move the cursor up,down,left, or right by using the arrow keys
or their Wordstar equivalents (control-e, control-x, control-s and
control-d). As you move the cursor vertically, you'll hear the line
under the cursor; As you move horizontally, you'll hear the character
under the cursor. You can move the cursor forward one word with
control-rightarrow or control-f and you can move it backward one word
with control-leftarrow or control-a. You can go to the beginning of
the current line with the home key, and to the end of the current line
with the end key. These two keys will read the character the cursor
lands on.
You can go to the top left corner of the screen (line 1, column 1) by
pressing the Page Up key, or to the bottom right corner (line 25,
column 80) with the Page Down key. You can go directly to any line by
pressing L, typing the line number (1 through 25) and pressing ENTER.
This will move the cursor to column 1 of the appropriate line, and
read the line. You can move the cursor to any column of the current
line by pressing H, typing the column number (1 through 80) and
pressing ENTER. This will read the character in the column you
selected.
When using the L and H commands you can also specify relative cursor
movement by using a plus or minus sign before the line or column
number. For example, L +5 ENTER would move you down five lines and H -
10 ENTER would move you left 10 columns.
You can search the screen for box corner graphic symbols (useful when
setting up windows) by using the T and B commands. Pressing T moves
the cursor to the next top-left-corner graphic symbol, and pressing B
moves the cursor to the next bottom-right-corner graphic symbol. Note
that there may be more than one of each such symbol on the screen at
the same time.
You can search the screen for a word or phrase by pressing the forward
slash key, typing the word or phrase you want (each letter you type
will be echoed) and pressing ENTER. Tinytalk will begin its search
with the character after the current one (this makes repeat searches
easier), move the cursor to the first character of the word or phrase,
and read the line it's on. If the search is unsuccessful, the cursor
won't move. Search phrases will not be matched across lines. To
search for the next occurrence of the word or phrase, press the slash
key immediately followed by ENTER.
You can find out what line and column the cursor is on by pressing A.
You can tell Tinytalk to warn you when you're moving over characters
in a certain color by putting the cursor on such a character and
pressing X. This is called "protected attribute alert" and is useful
when you're designing database screens or the like. Each time you
move the cursor to a character with the protected attribute (whether
in review mode or in application cursor tracking) Tinytalk will give a
short buzz. You can turn off protected attribute alert by pressing U.
READING PARTS OF THE SCREEN
You can re-read the current line by pressing the space bar. You can
read from the cursor to the end of the current line by pressing E, or
from the start of the current line to the cursor by pressing S. You
can read from the current line to the bottom of the screen by pressing
G, or read the entire screen by pressing Z. You can read a defined
window by pressing the number key (0 through 9) for that window.
You can re-read the word the cursor is on by pressing the comma key.
Pressing it a second time will spell the word, and pressing it a third
time will phonetically spell it. You can phonetically spell the
character the cursor is on by pressing the period key.
You can find out the exact ASCII value of the character under the
cursor, as well as its video attributes (colors and the like) by
pressing V. The ASCII value will be read as a decimal number; the
attributes will be read as foreground color on background color.
(NOTE: many programs will still use the full set of color attributes
even if the system has a monochrome display. Tinytalk deliberately
reads the color names in this case because while two combinations of
color attributes may look the same on a mono monitor, they are
distinct as far as functions that read lightbars and the like are
concerned. To save memory, two "special case" colors are read a bit
funny: gray comes out as "light black" and yellow comes out as "light
brown." Finally, background colors with the intensity bit set are
always announced as "blinking" even if you have an EGA or VGA display
that allows high-intensity background colors. For example, if the
actual color were gray on yellow, it would be read as "light black on
blinking brown.")
SECTION 11B: SYNTHESIZER CONTROL COMMANDS
Most of the synthesizer control commands use function keys F1 through
F4. For settings like speed or pitch, there's a pair of keys: one to
raise the value and one to lower it. Not all synthesizers support all
options; Tinytalk will say "not available" if you try to set an option
that you don't have. Each command will read the current value of the
setting back to you; note that these are Tinytalk's own numbers for
the setting rather than the synthesizer's.
You can raise the value of the tone setting by pressing F1, and lower
it by pressing Shift-F1. You can raise the volume with F2, and lower
it with Shift-F2. You can raise the pitch with F3 and lower it with
Shift-F3. You can increase the speed with F4, and decrease it with
Shift-F4.
Some synthesizers have options for how to pronounce numbers. This is
called number processing mode. If your synthesizer has such a mode,
Control-F1 increases the mode setting and Alt-F1 decreases it. The
actual meaning of the mode setting depends on the synthesizer.
You can send a direct command to your synthesizer by pressing the
greater-than key, entering the command (including any control
characters needed) and pressing ENTER. You can re-initialize the
synthesizer by pressing Alt-I.
SECTION 11C: TINYTALK SETTING COMMANDS
Most of Tinytalk's operating options are set up from a menu which you
can bring up by pressing M. You'll hear the first option (in this
case, keyboard echo) and its value. Each time you press the ENTER
key, you'll move to the next option until you reach the end of the
menu. When you come to the option you want to change, you can press
the space bar to cycle the setting through its possible values. You
can also go directly to an option by pressing the appropriate letter
or digit for that option (These are read to you when you step through
options with ENTER). Pressing ESCAPE will take you out of the menu.
While you're in the menu, most other review-mode commands won't work.
OPTION 0: KEYBOARD ECHO
Available values are words (default), letters, letters with no
interrupt, none and none with interrupt. The difference between
"letters" and "letters no interrupt" is that in the former case, each
new letter typed flushes the speech buffer. This may be annoying to
users with the Echo GP/PC, which squeaks obnoxiously when being
flushed. "None with interrupt" doesn't echo your keys, but does shut
up the synthesizer each time you hit a key. This is useful for things
like long menus where you want to shut up the synthesizer as soon as
you make a selection, even though you haven't heard the whole menu yet.
OPTION 1: VERBOSITY
This controls how much Tinytalk speaks. Available values are noisy
(everything spoken), quiet (immediate output not spoken) and silent
(nothing spoken unless in response to a hotkey or review command).
OPTION 2: PUNCTUATION
This controls what punctuation, if any, gets pronounced when reading
text. It does not affect keyboard echo. Available values are all
(default), some, user and none. If this is set to "user," Tinytalk
will pronounce only those punctuation characters that you specifically
select (see the P command below).
When you're in review mode, Tinytalk will pronounce all punctuation
characters regardless of the value of this setting. Tinytalk will
also pronounce all punctuation if you're doing anything that reads a
character at a time (otherwise you'd get disconcerting "dead spots" as
you moved the cursor).
OPTION 3: AUTOMATIC POP-UP WINDOW DETECTION
Available values are off (default), no repeat (window is read only
once unless it has lightbars), repeat (window will be re-read if the
text inside it changes) and beep on repeat (window is read the first
time it pops up or if it has lightbars; subsequent changes result in a
beep). Enabling auto pop-up detection may slow your system down; this
should not be a problem except in some telecommunication programs
where the slowdown might cause incoming characters to be missed.
OPTION 4: FORMS MODE
Available values are off, left and right. Left is for applications
that put the cursor at the beginning of the field they move into (such
as Dbase); right is for applications that put the cursor at the end of
the field (such as Paradox).
OPTION 5: HORIZONTAL OUTPUT
This option determines what Tinytalk will read when you move the
cursor horizontally. Available values are lines, words, characters,
bars, none, "window lines," "Paradox columns" and columns. "Bars"
means that Tinytalk will read the part of the line around the cursor
that has the same video attributes as the character under the cursor
(note that this won't always track lightbar menus, because many
programs don't actually move the cursor when drawing lightbars).
"Window lines" means that if the cursor is between vertical lines
drawn on the screen, only the text between those lines will be read.
"Paradox columns," intended for use with Borland's Paradox database,
means that Tinytalk will follow the lines up until it sees a column
title, read the title and then read the portion of the current line
between the lines. "Columns" means that Tinytalk will read the part
of the line around the cursor, stopping on either side if it sees two
or more spaces. You'd use this setting if, for example, you were in
WordPerfect and editing a document organized into columns.
If you select "window lines" or "columns" and you have a floating
window defined (see section 10), Tinytalk will read the portion of the
window above the text before reading the text.
Regardless of this setting, Tinytalk will read by character if a
horizontal move causes the cursor to move exactly one character to the
left or right.
OPTION 6: VERTICAL OUTPUT
This option determines what Tinytalk will read when you move the
cursor vertically. The choices are the same as for horizontal output.
OPTION 7: BLANKS
This determines how Tinytalk reads blank lines when moving vertically
or reading portions of the screen (in review or via hotkeys).
Available values are off (default) and on. If this option is turned
on, blank lines will be announced as "blank"; otherwise they will be
silent.
OPTION 8: PHONETICS
Available values are off (default) and on. If this option is turned
on, operations that read a character at a time will pronounce letters
phonetically ("able," "baker," etc.).
OPTION 9: TIMEOUT
Determines how long Tinytalk will wait before forcing out the last
word or part of a word displayed. Normally this is half a second, but
sometimes (like when chatting with someone in a terminal program) the
delay is too short and words get spelled out. This option allows you
to change the delay; available values are half second (default), one
second and two seconds.
OPTION A: STABILITY TIME
Determines how long Tinytalk will wait before deciding that a watch
window has stopped changing. You can increase this from the default
if you find that Tinytalk is trying to read windows before the
application program has completely updated them.
OPTION B: SHUTUP TIME
Determines how long Tinytalk will wait when using the timed shutup
command. Available values are 5 seconds, 20 seconds, 60 seconds and
indefinite. If you select "indefinite," immediate output will stay
off until you hit a key.
OPTION C: ACTION WHEN ENTER OR TAB IS PRESSED
If this option is turned on, Tinytalk will treat the tab, shift-tab
and ENTER keys as vertical cursor movement keys.
OPTION D: KEYBOARD ECHO PUNCTUATION
Determines what punctuation, if any, is pronounced when echoing
keystrokes. The options are the same as for the reading punctuation
option. Tinytalk maintains separate user-defined punctuation tables
for text reading and keyboard echo, so you can, for example, arrange
to have some punctuation symbols pronounced when you type them but not
when reading text.
OPTION E: CAPS IDENTIFICATION
Setting this to "on" will cause Tinytalk to identify capitalization.
If a word begins with a capital, it will say "cap" before reading the
word. If the word has more than one letter and all of them are
capitalized, it will say "all caps" and if the word has capitals in
the middle (as in some trademarks) it will say "mixed case." This
option is off by default.
OPTION F: SPELL WORDS WITH DIGITS
If this option is on, Tinytalk will spell out any word that contains
both letters and digits (such as ham radio callsigns). It is on by
default.
OPTION G: WORD TERMINATOR
This option controls how Tinytalk determines the end of a word when
you're moving the cursor word-by-word. "Non-alpha" means that
anything other than a letter or digit character terminates a word;
"space" means that only spaces end words. Different word processors
and text editors have different ideas about when a word ends; you
should set this option to match whatever your word processor does. For
example, WordPerfect treats a hyphenated word as a single word and
will move the cursor across the entire word, whereas VDE (a Wordstar-
compatible text editor) would treat it as two separate words.
There are a couple settings that aren't part of the menu. You can set
user-defined reading punctuation by pressing P. Initially, all the
punctuation characters are set to be pronounced. Pressing a
punctuation key will turn that symbol off if it was on and on if it
was off. Pressing ENTER takes you out of punctuation-setting mode.
For example, if you wanted to hear all the punctuation symbols except
the period, comma and semicolon you'd press P, period (you'd hear
"period off"), comma, semicolon and ENTER. If you later decided you
wanted to hear the period, you'd press P, period (you'd hear "period
on") and ENTER. Setting user-defined keyboard echo punctuation works
the same way, except that you press control-P rather than P.
You can set a right margin bell (useful for some on-line services
whose message editors don't have word wrap) by pressing W, typing a
column number, and pressing ENTER. Anytime you cross the margin when
typing, a bell will ring. You can turn the bell off by entering a
column number of zero.
SECTION 11D: WINDOW DEFINITION COMMANDS
There are four or five steps involved in defining a window:
1) Select the window. You do this by holding down the alt key and
typing the window's number (alt-0 through alt-9). When you do this,
Tinytalk will tell you the window's current dimensions and settings.
You are now in "window definition mode" which means that the ENTER key
behaves a bit differently than it otherwise would.
2) Set the window's boundaries. You do this by moving the cursor to
the top left corner, pressing ENTER, moving to the bottom right corner
and pressing ENTER again. Once you have done this, you are out of
window definition mode and the ENTER key will behave normally again.
If all you're planning to do with the window is read it on command,
you can skip the next two steps.
3) Tell Tinytalk when to read the window. You can step through the
"WHEN" options by pressing F8. If you choose "triggered" you will
also need to tell Tinytalk what window to trigger from. Press alt-F8
and you will hear the prompt "triggered by." Type the number of the
window you wish to trigger from and press ENTER. If you choose
"search" you will need to specify what text to look for. Press alt-F8
and you will be prompted "search for." Type in the text that you want
to look for and press ENTER. Tinytalk's matching process is case-
sensitive, so be sure that you use the same capitalization that the
application program uses when displaying the text.
4) Tell Tinytalk what to read when the window activates. You can step
through the "WHAT" options by pressing shift-F8. If you choose the
"lightbar" option Tinytalk will try to automatically determine the
appropriate video attribute the first time the window activates. If
instead you want to have a specific attribute read, you have two
options. The first is to move the cursor to a character that's
displayed in the attribute you want and press control-F8. Tinytalk
will say "bar" and read the attributes. The second is to use the
press F9 (sets foreground color) and Shift-F9 (sets background color)
until you have the attributes you want. Either option tells Tinytalk
to read only characters in that attribute when the window activates.
You may also need to do this if Tinytalk incorrectly identifies the
lightbar attribute (some lightbar windows can have text in four or
five different attributes).
If you choose the "switch" option, press control-F8 and you will be
prompted for the configuration to switch to. You can enter a number,
a name, or repeatedly press the space bar until you hear the
appropriate configuration. Press ENTER when you've got the right one.
5) If you don't want the window to shut up the synthesizer when it
activates, press control-F9. As described earlier, you may need to do
this if the window is usually going to activate right after another
one and you want to hear both of them, but there may be a short delay
between the activations. Control-F9 is a toggle; pressing it again
will tell the window to shut up when it activates.
If you accidentally wind up in window definition mode, you can back
out by pressing the ESCAPE key. F8 and shift-F8 also back you out of
window definition mode. This means that if you just want to change a
window's setting without changing its boundaries, you can select it
with alt-0 through alt-9 and then use F8 or shift-F8. The ENTER key
will then behave normally.
Pressing alt-C will reset all 10 windows to plain.
SECTION 11E: REMAPPING HOTKEYS
You can change the keystrokes for any of the hot keys discussed in
Section 6. This is called "remapping" a hot key. There are two ways
to remap a hotkey. The first, "global remapping" changes the key in
every configuration. The second, "local remapping" changes the key
only in a single configuration. To remap a hot key, press R for
global remapping or Alt-R for local remapping. Tinytalk will say
"remap key." Enter the hot key you wish to change. Tinytalk will say
"to." Enter the key you want to use in place of the old hot key.
For example, let's say you don't like to use Alt-space to read the
current line and would rather use Control-L. However, one of your
application programs uses Control-L for its own purposes, so you want
to use Alt-L instead when you're running it. This means that you want
to globally remap Alt-space to Control-L, and then locally remap
Control-L to Alt-L in the configuration for that application. To do
this, press R, Alt-space, and Control-L. Then select the
configuration for the application and press Alt-R, Control-L and Alt-L.
If you pick the wrong key to remap, press ESCAPE when you're prompted
for the "to" key. If Tinytalk says "conflict" when you enter the "to"
key, it means that that key is already in use as a hot key for
something else (in the above example, if you decided that you wanted
to globally remap some other hot key to either control-L or Alt-L,
you'd get a "conflict" message).
If you decide to use the Shift key in a remapped hotkey, remember that
IBM-compatible computers consider the left and right shift keys to be
two separate keys.
SECTION 11F: LABELLING KEYS
You can tell Tinytalk to read a "label" whenever you press a certain
key. For example, you could tell it to say "enter" every time you hit
the ENTER key, or you could tell it to announce the Shift, Control and
Alt keys whenever they're pressed. As with hot key remapping, you can
label keys either globally or locally.
To label a key, press D for global labelling or Alt-D for local
labelling. Tinytalk will say "label key." Press the key you want to
label. Tinytalk will say "as." Type in the word or phrase you want
to hear and press ENTER. To delete a key label, press D or Alt-D,
press the key, and then press ENTER without typing anything at the
"as" prompt. Tinytalk will say "cancel."
SECTION 11G: CONFIGURATION SETTING
To pick a new configuration, press C. This command works just like
the Alt-right bracket hotkey.
When you pick a configuration, one of two things can happen. Tinytalk
keeps track of whether or not you've ever picked a configuration
before. If you pick it for the very first time (meaning that it
doesn't yet contain any settings), Tinytalk will copy your current
settings into it. If you have used it before, Tinytalk will change
your settings to the ones defined in the new configuration.
Once you've picked a configuration, any changes that you make to your
settings or window definitions will be stored in that configuration.
For example, if you pick configuration 1 and then define a window,
that window definition will become part of configuration 1. If you
then pick configuration 2 and define another window, that window will
become part of configuration 2. If you then pick configuration 1, the
second window will vanish and the first one will become defined.
You can give your current configuration a name by pressing N. Names
are used for two purposes: they let you hear the name when stepping
through the configuration set with the C or Alt-right bracket
commands, and they allow Tinytalk to automatically select a
configuration when you run an application. When you enter the N
command, Tinytalk will read the name of the current configuration (or
the number if no name has been set) and say "name." Type in the name
and press ENTER (pressing ENTER by itself will leave the name
unchanged).
If you want Tinytalk to load a configuration automatically when you
run an application, make sure that the name you select is the same as
the program's name (without any command line arguments). Don't
include an extension (.COM or .EXE). Configuration names shouldn't
contain any spaces; if they do, you won't be able to load them by
typing in the name.
NOTE: The auto-configuration feature works only when DOS loads an
executable program. Tinytalk has no way to detect when you run a
batch file or an internal command like DIR. Tinytalk will, however,
detect a program invoked from within a batch file or from another
program (such as a menu shell).
SECTION 11H: MISCELLANEOUS COMMANDS
You can find out the status of the caps lock, num lock, scroll lock
and insert keys by pressing K.
You can leave review mode by pressing ENTER. The cursor will be
restored to where it was before you entered review mode. If you want
to move the application's cursor to where the review cursor is, press
semicolon instead of ENTER. Tinytalk will try to move the application
cursor into place by sending "fake" cursor movement keys to the
application. This may not work with all applications. For it to
work, the application must use the BIOS to get keys, the cursor keys
must move the cursor in the expected directions, and the review cursor
must be in a place where the application can put it (most word
processors won't let you move the cursor to a status line, for
example). Some database programs will move the cursor horizontally in
response to vertical movement keys, and some editors will not let you
put the cursor on the bottom line of text. If Tinytalk can't get the
cursor into position, it will say that the routing has failed.
You can unload Tinytalk from memory by pressing Control-U. Avoid
doing this if you're not at the DOS prompt or if you've installed
memory-resident programs after running Tinytalk, since you may wind up
"un-installing" parts of these programs as well.
SECTION 11I: A WINDOW AND CONFIGURATION EXAMPLE:
The most common question we get on the phone is "what's the best way to set
up a configuration for WordPerfect?" While there may not be any one "best"
way, we'll walk through creating a set of configurations that lots of
people have found useful. The file SAMPLE.TTK contains these
configurations.
Before we get started with WordPerfect, we'll want to create a
configuration for ordinary, DOS-prompt stuff. Go into review (by pressing
Alt-Enter), press C to load a configuration, press 0 and hit enter. Set
your synthesizer parameters and other settings to your liking. Press N to
give the configuration a name, enter COMMAND and press enter. Naming this
configuration as COMMAND guarantees that if you shell out to DOS from
within a program, this configuration will be loaded.
The first thing to realize is that WordPerfect uses the screen in
different ways depending on what mode you're in, and you can't try to
shoehorn all the different screens into a single configuration. We'll
be creating separate configurations for the various screens and tying
them together with "search" and "switch" windows. For now, we'll
concentrate on the main editing screen and the spell-checker screen.
WordPerfect's main screen has 24 lines of text and a status line at
the bottom, so we'll want to set up two windows. As you'll see in a
moment, a complication involving the status line means we'll actually
need three. The first step is to choose a configuration number (we'll
pick number one). We enter C, hear "load config," press 1 and hit ENTER.
We'll want to give this configuration the name "WP" since it's the one
you'll want to have auto-loaded when you first come into WordPerfect.
Press N and you'll hear "1 name." The "1" is spoken because you haven't
named the configuration yet. Type "wp" and press ENTER.
We want to make our first window (window 1) cover the first 24 lines
of the screen. This means that the top left corner should be at line
1, column 1 and the bottom right corner should be at line 24, column
80. Press Alt-1 to select window 1. Tinytalk will say "window 1" and
read you the current settings for the window, which will probably be
irrelevant. Remember that you're now in window-setting mode and that
the ENTER key will be used to mark corners. Our first task is to get
the cursor to the top left corner. The quickest way to do this is to
press the PgUp key, since that moves the cursor to line 1, column 1.
Next we press ENTER to mark the top left corner; Tinytalk will say
"top left" to confirm. Now we need to get the cursor to line 24,
column 80. Press L and Tinytalk will ask you "line." Enter 24 and
press ENTER. Tinytalk will move the cursor to line 24, column 1 and
read the line. Note that pressing ENTER didn't mark the corner yet
because it was part of your response to the L command. The quickest
way to get over to column 80 is to press the END key. Now press ENTER
and Tinytalk will say "bottom right."
Since WordPerfect writes directly to the screen, we want to
automatically monitor this window so that we'll hear it when it
changes. We do this by setting its "when" type to "watch."
Repeatedly press F8 until you hear "watch." You'll also need to set
the "what" type to "scroll" since you won't want to hear the entire
window repeated just because the text moved up or down a line. Press
Shift-F8 until you hear "scroll."
Now comes the tricky part. WordPerfect uses the bottom line of the
screen for two different purposes. When you're typing and editing, it
has status indicators like row and column counts that change whenever
you type a character. When you call up menus or press command keys,
however, it displays messages and prompts. You'll want to hear the
prompts, but you won't want to hear all the status indicators you
every time you type a character.
It turns out that all the interesting messages start in the left half
of the line. When there's no message, the left half is blank and all
the status indicators are at the right end. To take advantage of
this, we'll set up two windows. Window 2 will activate when the left
half of line 25 changes, but won't say anything. Window 3 will be
triggered by window 2 and will read the entire line. The net effect
will be that you'll hear the entire bottom line if the left half
changes, but not if the only changes are in the right half.
Press Alt-2 to select window 2. Press L 25 ENTER to put the cursor on
line 25, column 1 and press ENTER to mark the top left corner. Press
H 40 ENTER to move the cursor to column 40 and press ENTER again to
mark the bottom right corner. Now press F8 until you hear "watch,"
and press Shift-F8 until you hear "none," since you don't want the
half-line to be read to you.
Now press Alt-3, put the cursor on line 25, column 1 (if you haven't
moved the cursor after setting up the second window, you can press
HOME) and press ENTER to mark it. Then press END to put the cursor on
column 80 and press ENTER. Now press F8 until you hear "triggered"
and then press Alt-F8, at which point Tinytalk will prompt you with
"triggered by." Type 2 and press ENTER. You don't need to do
anything with Shift-F8 this time because the default "what" setting is
"all" which is exactly what you want to hear.
That wraps it up for the main editing screen. The spell-checking
screen is organized as follows: the first 11 lines show the text
around the word in question, with the word itself displayed in a
different color from the rest of the text. Line 12 has position
indicators. Lines 15 to 24 show a list of suggested spelling for the
word, and line 25 presents various menus and prompts. As you can see,
this is a completely different layout from the editing screen, and
trying to make one set of windows work well with both screens would be
impossible.
When you come into the spell-checking screen, line 25 begins with
"Check." To detect this, we'll set up window 4 in our edit-screen
configuration as a search window to look for this. We'll make its
action be to switch us to configuration 2, which we'll set up for the
spell checker. Press Alt-4, put the cursor on line 25, column 1 (with
HOME if you haven't moved the cursor since setting up the previous
window) and press ENTER. Now move the cursor to column 5 (by pressing
the right-arrow key 4 times) and press ENTER again. Press F8 until
you hear "search" and then press Alt-F8. You'll be prompted "search
for." Type "Check" (make sure the first character is capitalized and
the rest are in lower case, since search windows require an exact
match and that's the way WordPerfect displays it. Now press Shift-F8
until you hear "switch" and press Control-F8. You'll be prompted
"switch to"; type "2" and press ENTER.
Press C, 2, ENTER to get into configuration 2. We'll set up the first
11 lines of the screen as an automatically monitored spell lightbar
window so that you'll hear the questionable word spelled out. Press
Alt-1 to select window 1, PgUp to go to line 1, column 1, ENTER to
mark the top left corner, L 11 ENTER END to go to line 11, column 80,
and ENTER to mark the bottom left corner. Press F8 until you hear
"watch" and Shift-F8 until you hear "spell lightbar."
We'll set up lines 15 through 24 (the suggested words) as a regular
watch window so you'll hear all of them listed. Press Alt-2, L 15
ENTER ENTER L 24 ENTER END ENTER to size the window; press F8 until you
hear "watch." You don't need to use Shift-F8 because the default setting
is "all." You do, however, need to press Control-F9, at which point you'll
hear "no shutup." The reason for this is that WordPerfect has the somewhat
annoying habit of pausing for a few seconds while it searches for spelling
suggestions. This means that window 2 will often activate after window 1
does, and you don't want that activation to shut up the synthesizer while
it's reading the misspelled word.
We'll set up the bottom line as a watch window. Press Alt-3, L 25 ENTER
ENTER END ENTER and press F8 until you hear "watch." Now all we need is a
way to get back to configuration 1 when spell-checking is done and the
editing screen comes back. We'll do this by looking for the word "Pos" in
column 70 of line 25. Press Alt-4, L 25 ENTER H 70 ENTER ENTER, move the
cursor two characters to the right, press ENTER again, press F8 until you
hear "search," press Alt-F8 and type "Pos" (first character capitalized)
and press ENTER, press Shift-F8 until you hear "switch," press Control-F8,
type "1" and hit ENTER.
SECTION 12: SAVING AND LOADING CONFIGURATION LIBRARIES
As you know, Tinytalk can hold up to 30 configurations in memory. The
TTCONF program lets you save these configurations to disk for later
use and recall them when you need them. There are two ways to do
this. The first is to save your configurations in a configuration
library file, and load the library the next time you use Tinytalk.
The second is to "clone" a copy of Tinytalk; this creates a customized
executable copy of Tinytalk with the configurations "burned in."
Since Tinytalk is so small, you can keep multiple copies configured
for various applications.
TTCONF is a separate program; you have to be at the DOS prompt to use
it. To save your current configurations to a library file, type
"ttconf save" followed by a file name (if no extension is given, it
will default to ".TTK"). For example, if you wanted to save your
configurations in a library file called MYPROGS.TTK, you'd type
"ttconf save myprogs."
To load a configuration library from disk, type "ttconf load" followed
by the file name. For example, you could recall the configurations
you saved before by typing "ttconf load myprogs." You can tell TTCONF
to select a configuration within the library (if you don't, Tinytalk
will switch to whatever configuration was active when the library was
saved). You do this by putting the name or number of the
configuration after the library file name. For example "ttconf load
myprogs 5" would bring in the MYPROGS library and switch to
configuration 5.
Keep in mind the difference between a configuration and a
configuration library. A configuration is the settings you use for a
particular application. A configuration library is a disk file that
holds thirty configurations. For example, you could set up
configuration 1 for Word Perfect's main mode, configuration 2 for the
Word Perfect spell checker, configuration 3 for Lotus, and so on. You
would then store all these configurations in a single configuration
library (such as MYPROGS.TTK). Whenever you loaded that file, you
would get all three configurations in memory. You don't need to have
a separate configuration library for each application; this is in
contrast to some other screen readers where there's a configuration
file on disk for each configuration. By holding multiple
configurations in memory, Tinytalk avoids having to make disk accesses
while running, which greatly simplifies many of its internal details
(for example, it never has to worry about DOS not being "ready").
To make a custom copy of Tinytalk, type "ttconf clone" followed by a
filename with no extension (".exe" will be automatically added to the
end). For example, if you wanted to create a version of Tinytalk
called MYTALK, you'd type "ttconf clone mytalk." From then on, you
could run MYTALK rather than TTALK and you'd come up with the
configurations you wanted.
If you use the "clone" option you will also customize your copy for
the port you selected. This feature is not available with the "load"
or "save" options, as it makes no sense to switch ports while Tinytalk
is already running.
If you plan to clone Tinytalk, don't use a compression utility like
LZEXE or PKLITE on TTALK.EXE. The cloning process requires TTALK.EXE
to be 1) really named TTALK.EXE (that's why you renamed your
synthesizer-specific file) 2) available in uncompressed form and 3)
findable on the DOS path.
You can set an environment variable called TTALK to tell TTCONF where
to look for configuration libraries. For example, if you wanted to
keep all your configuration libraries in a directory called C:\CONFIG,
you could put the line SET TTALK=C:\TTALK\ in your AUTOEXEC.BAT file.
This will make TTCONF look in that directory if you don't include a
directory name in the file name.
If you run Tinytalk or a clone while Tinytalk is already in memory,
the configuration information will be copied over to the version
running in memory. You won't wind up with two copies in memory
(running a clone with a different port selected won't change your port
assignment).
If you load a configuration library that was created for a different
synthesizer than the one you're using, your synthesizer settings will
not change. All other configuration parameters will change as usual.
VIEWING CONFIGURATIONS
TTCONF can also tell you how a configuration is set up. Typing "ttconf
view" will give you a summary of how all your configurations, hotkey settings
and key labels are set up in memory. If you want to know how the
configurations in a library file are set up, type "ttconf view" followed by
the library file name, for example "ttconf view myprogs." You can tell
TTCONF to show only the settings for a single configuration by following
the command with a number sign followed (no space) by the name or number of
the configuration you're interested in, for example "ttconf view #wp" or
"ttconf view myprogs #wp."
TTCONF uses DOS output, so you can redirect the display to a file or
printer if you want to, using the standard DOS ">filename" convention. It
will omit the "more" prompts between configurations if you redirect the
output.
If you're viewing all your configurations, TTCONF will also tell you your
port number and your current configuration. If you're using a synthesizer
like the Doubletalk that doesn't use a serial or parallel port, the port
number listed will be meaningless; it does not mean that the port is
actually tied up.
CONVERTING CONFIGURATIONS
When we add new features to Tinytalk, we sometimes have to change the
internal format of configuration files. Unlike some screen-reader
manufacturers who will go unnamed here, we don't believe that re-entering
all your configurations when the file format changes is a productive use of
your time. Therefore, we supply a program called CVTCONF to registered
users (if you've been using Tinytalk long enough to have created a bunch of
configurations and to have crossed a version boundary, you've been using it
long enough that you should register!). CVTCONF will take a configuration
library created under a previous version and convert it to the format
required by the new version. The version history in the READ.ME file will
tell you whether or not a new version requires conversion.
To convert a library file, type "cvtconf" followed by the file name, for
example, "cvtconf myprogs." Tinytalk has to be running for CVTCONF to work
because it needs to be able to find out some things like what synthesizer
you're using.
SECTION 13: KNOWN BUGS AND LIMITATIONS
1) The backspace key may not echo correctly when you back up over a
line boundary (it will echo whatever character was in column 80 of the
previous line; this may not be the character that the application
deletes).
2) Tinytalk assumes that you're using an 80x25 screen; 40-column
screens and 43 or 50-line screens aren't presently supported.
3) Removing Tinytalk from memory occasionally locks the system up.
SECTION 14: CONTACT INFORMATION
We can be reached at:
OMS Development
1921 Highland Ave.
Wilmette, IL 60091
(708)251-5787
For information on becoming a registered user of Tinytalk Personal,
please see the accompanying file ORDER.DOC.
We invite your comments and suggestions concerning Tinytalk Personal
regardless of whether or not you're a registered user (though we
usually can't return long-distance calls from unregistered users
unless you're reporting a bug). I can also be reached at the COPH-2
BBS ((312)436-0559, Fidonet 1:115/778, 300/1200/2400 baud, 24 hours)
(as of the date of this release, the COPH-2 BBS was temporarily down
due to hardware problems) and on Genie at E.Bohlman. The current
shareware version can always be found on the Runway BBS at 215-623-
6203 (conference 77).
SECTION 15: ABOUT OMS DEVELOPMENT
OMS Development has provided custom programming and hardware design,
computer consultation and training, system installation and maintenance and
similar services for over 12 years. Our work has included development of
Turbo Pascal database programs for the food brokerage industry, design of
control software for a sophisticated multi-link intercom system, LAN
maintenance and custom in-house programming for a large collection agency,
development of optometric instruments used in sports vision training and
statistical analysis of employee attitude surveys. Contact us at (708)251-
5787 for answers to all your systems needs.
Other shareware products from OMS Development include Search, a
flexible and fast free-form text retrieval system and Keycache, a TSR
word expander that greatly speeds up typing for users who have
difficulty using a keyboard. We also are dealers for the Doubletalk
PC speech synthesizer from RC Systems.
Eric Bohlman
May 18, 1992